package reflect;

/**
 * @author DBX
 * @effect
 * @date 2021/09/11/16:08
 */
public class ReflectTest02 {
    public static void main(String[] args) {
        User user = new User();
        System.out.println(user);
        try {
            Class c = Class.forName("reflect.User");

            /*通过反射机制，获取Class来实例化对象
            * newInstance（）这个方法会调用User这个类的无参构造方法，完成对象的创建
            * 重点是：newInstance需要保证无参构造方法存在*/
            Object obj = c.newInstance();
            System.out.println(obj);
        } catch (ClassNotFoundException e) {
            e.printStackTrace();
        } catch (IllegalAccessException e) {
            e.printStackTrace();
        } catch (InstantiationException e) {
            e.printStackTrace();
        }
    }
}
